Promoting interoperability of presence-based systems through the use of ubiquitous online identities

ABSTRACT

A client system is configured to submit a request to a first instant messaging system for access to the first instant messaging service The request includes an online identity that is currently being used to access a second instant messaging service associated with the second instant messaging system. The second instant messaging system is configured to send a message to the first instant messaging system that indicates the online identity is currently being used to access a second instant messaging service associated with the second instant messaging system. The first instant messaging system maintains a profile that is updated to indicate that the online identity is currently being used to access the first instant messaging service and, in response to the message, the profile is also updated to indicate that the online identity is currently begin used to access the second instant messaging service.

CLAIM OF PRIORITY

This application claims priority under 35 USC §119(e) to U.S.Provisional Patent Application Ser. No. 60/737,755, filed on Nov. 18,2005, the entire contents of which are hereby incorporated by reference.

TECHNICAL FIELD

This disclosure relates to using an online identity to access one ormore interoperable presence-based services.

SUMMARY

According to one general aspect, a method according to the presentapplication includes enabling access to a first instant messagingservice using an online identity that is associated with a secondinstant messaging service, accessing a profile that indicates at leastone other instant messaging service is to be provided with presenceinformation regarding the use of the online identity to access the firstinstant messaging service, and providing the other instant messagingservice with the presence information regarding the use of the onlineidentity to access the first instant messaging service.

Implementations of the above general aspect may include one or more ofthe following features. For example, enabling access to the firstinstant messaging service using the online identity may comprisecommunicating with the second instant messaging service to authenticatethe online identity. The communicating with the second instant messagingservice to authenticate the online identity may include communicatingwith the second instant messaging service to authenticate the onlineidentity without soliciting a user of the online identity.

Alternatively or additionally, enabling access to the first instantmessaging service using the online identity may comprise communicatingwith the first instant messaging service to authenticate the onlineidentity such that the first instant messaging service authenticates theonline identity and provides the other presence other instant messagingservice with the presence information associated with the onlineidentity. Alternatively or additionally, enabling access to the firstinstant messaging service using the online identity may comprise sendingan authentication ticket to the client device from the second instantmessaging service. Alternatively or additionally, enabling access to thefirst instant messaging service using the online identity may comprisereceiving a request for access to the first instant messaging servicefrom a client device, the request including the online identity,authenticating the online identity, and providing the client device withaccess to the first instant messaging service upon authentication of theonline identity.

Implementations of the above general aspect may include one or more ofthe following features. Accessing the profile may include sending arequest for publication rules from the first instant messaging serviceto the second instant messaging service and receiving the publicationrules at the first instant messaging service from the second instantmessaging service. Alternatively or additionally, accessing the profilemay comprise sending a request for publication rules from the secondinstant messaging service to the first instant messaging service andreceiving the publication rules at the second instant messaging servicefrom the first instant messaging service. Alternatively or additionally,accessing the profile may comprise accessing a locally stored profile.The profile may include more than one instant messaging service, one ofwhich is the first instant messaging service. The at least one otherinstant messaging service may include the second instant messagingservice. The online identity may be expressed using a combination of ausername and a domain name.

Alternatively or additionally, accessing the profile may includeaccessing a list of instant messaging services to be provided with thepresence information. Alternatively or additionally, accessing theprofile may include accessing a set of publication rules. The profilemay be associated with the online identity. The profile further mayidentify an identity of the instant messaging service that is to beprovided with the presence information regarding the user of the onlineidentity to access the first instant messaging service. Determining,from the profile, the other instant messaging service that is to beprovided with presence information regarding the use of the onlineidentity to access the first instant messaging service.

Providing the other instant messaging service with the presenceinformation may comprise sending the presence information from the firstinstant messaging service to the other instant messaging service.Alternatively or additionally, providing the other instant messagingservice with the presence information may comprise sending the presenceinformation from the second instant messaging service to the otherinstant messaging service.

Implementations of the above general aspect may also include one or moreof the following features. Providing the presence information tosubscribers associated with the first instant messaging service thathave subscribed to the presence information. Providing the presenceinformation to subscribers may include providing the presenceinformation to subscribers by the first instant messaging serviceindependent from other instant messaging services. Providing thepresence information to subscribers may include providing the presenceinformation to subscribers by the first instant messaging service inresponse to or at a direction of another instant messaging service. Thepresence information may include one or more of the following: loggingin, logging off, going idle, or going away. Determining that the onlineidentity is associated with the second instant messaging service mayinclude determining that the online identity is registered with thesecond instant messaging system.

According to another general aspect, a method according to the presentapplication includes receiving a request to access a first instantmessaging service, the request including an online identity anddetermining that the online identity is associated with a second instantmessaging service. The method also includes communicating with thesecond instant messaging service to enable authentication of the onlineidentity and upon authentication of the online identity, enabling accessto the first instant messaging service.

Implementations of the above general aspect may include one or more ofthe following features. For example, the online identity may include ausername and a domain name. Determining that that the online identity isassociated with the second instant messaging service may includeaccessing the domain name included in the online identity anddetermining that the online identity is associated with the secondinstant messaging service based on the accessed domain name. Accessingthe domain name may identify that the online identity is associated withthe second instant messaging service. Determining that the onlineidentity is associated with the second instant messaging service basedon the accessed domain name may include referencing a table to determinethat the online identity is associated with the second instant messagingservice, wherein the table associates the accessed domain name with thesecond instant messaging service.

Alternatively or additionally, determining that the online identity isassociated with the second instant messaging service may includedetermining that the online identity is associated with an account atthe second instant messaging service. Alternatively or additionally,determining that the online identity is associated with the secondinstant messaging service may include determining that the onlineidentity is registered with the second instant messaging service.

Additionally, the request also may include credentials associated withthe online identity. Receiving the request to access the first instantmessaging service may include receiving, at the client system, therequest from a user. Determining that the online identity is associatedwith the second instant messaging service may include determining, atthe client system, that the online identity is associated with thesecond instant messaging service and communicating with the secondinstant messaging service to authenticate the online identity mayinclude sending, from the client system, the online identity andcredentials to the second instant messaging service and receiving, atthe client system, an authentication ticket from the second instantmessaging service. Enabling access to the first instant messagingservice may include sending, from the client system, the authenticationticket to the first instant messaging service.

The implementations of the above general aspect may also include sendingthe authentication ticket from the first instant messaging service tothe second instant messaging service, requesting verification of theauthentication ticket from the second instant messaging service, andreceiving a verification message from the second instant messagingservice.

Determining that the online identity is associated with the secondinstant messaging service may include determining that the onlineidentity is associated with the second instant messaging service basedon the online identity or the received credentials. Receiving therequest to access the first instant messaging service may includereceiving, from the client system, the request at the first instantmessaging service, determining that the online identity is associatedwith the second instant messaging service may include determining, atthe first instant messaging service, that the online identity isassociated with the second instant messaging service, and communicatingwith the second instant messaging service may include sending anauthentication request from the first instant messaging service to thesecond instant messaging service, and in response to sending theauthentication request, receiving, at the first instant messagingservice, an indication of authentication from the second instantmessaging service; and enabling access to the first instant messagingservice may include enabling the client system to access the firstinstant messaging service. The authentication request may include theonline identity and the received credentials.

Implementations of the above general aspect may also include storing thereceived credentials to enable future authentication of the onlineidentity without sending the authentication request to the secondinstant messaging service. Receiving the request to access the firstinstant messaging service may include receiving, from a client system,the request at the first instant messaging service and determining thatthe online identity is associated with the second instant messagingservice may include determining, at the first instant messaging service,that the online identity is associated with the second instant messagingservice. Communicating with the second instant messaging service mayinclude requesting, at the first instant messaging service and from thesecond instant messaging service, credentials associated with the onlineidentity, in response to the request, receiving the requestedcredentials associated with the online identity at the first instantmessaging service from the second instant messaging service, comparing,at the first instant messaging service, the requested credentials to thereceived credentials from the client system, determining, at the firstinstant messaging service, whether the requested credentials matches thereceived credentials from the client system, and authenticating theonline identity, at the first instant messaging service, if therequested credentials match the received credentials from the clientsystem. Enabling access to the first instant messaging service mayinclude enabling the client system to access the first instant messagingservice.

Implementations of the above general aspect may also storing therequested credentials to enable future authentication of the onlineidentity without requesting the credentials associated with the onlineidentity from the second instant messaging service. Enabling access tothe first instant messaging service may include enabling the onlineidentity to share its presence information with at least one otheronline identity and send an receive instant messages from the at leastone other online identity.

Implementations of the described techniques may include hardware, amethod or process, or computer software on a computer-accessible medium.The details of one or more implementations are set forth in theaccompanying drawings and the description below. Other features will beapparent from the description and drawings, and from the claims.

In another aspect, access to a first instant messaging service using anonline identity is allowed. A profile associated with the onlineidentity is accessed and the profile is updated to indicate that theonline identity is currently being used to access the first instantmessaging service. A message is received from another instant messagingservice at the first instant messaging service. The message indicatesthat the online identity is currently being used to access a secondinstant messaging service. In response to the message, the profile isupdated to indicate that the online identity is currently being used toaccess the second instant messaging service.

Implementations may include one or more of the following features. Forexample, allowing access to the first instant messaging service usingthe online identity may include receiving a request to access the firstinstant messaging service, the request including the online identity;determining that the online identity is associated with the secondinstant messaging service; and communicating with the second instantmessaging service to authenticate the online identity.

The online identity may be associated with the first instant messagingsystem or the second instant messaging system. The online identity maybe expressed using a combination of a username and a domain name.Updating the profile to indicate that the online identity is currentlybeing used to access the second instant messaging service may includeupdating a table to include an identity of the second instant messagingsystem. The table may be updated to include an identity of a clientdevice accessing the second instant messaging service using the onlineidentity. The table also may be updated to include the duration of timethe online identity has been used to access the second instant messagingservice.

The other instant messaging service may include the second instantmessaging service. Updating the profile may include updating a counterthat indicates the number of times the online identity is used to accessone or more instant messaging services. Updating the profile may includedecrementing the counter if it is determined that the online identityhas logged off from either the first instant messaging service or thesecond instant messaging service.

A particular instant messaging service from which the online identityhas logged off may be identified and the one or more instant messagingservices may be notified that the online identity has logged off theparticular instant messaging service. A client device from which theonline identity has logged off may be identified and the one or moreinstant messaging services may be notified that the online identity haslogged off the client device.

Whether a value of the counter is equal to zero may be determined; andif so, the one or more instant messaging services may be notified of theonline identity's complete loss of presence. Accessing the profile mayinclude accessing a profile maintained by the first instant messagingservice.

In another aspect, a message directed to an online identity may bereceived at a first instant messaging service. It is determined that theonline identity has a connection to the first instant messaging servicethrough a second instant messaging service. At the first instantmessaging service, traffic delivery rules are accessed. The trafficrules are configured to control delivering of the message and arecustomized for an individual. At least a portion of the traffic deliveryrules and the message are sent to the second instant messaging service,thereby enabling the second instant messaging service to deliver themessage to the online identity according to the traffic delivery rules.

Implementations may include one or more of the following features. Forexample, the online identity may include a user name and a domain. Itmay be determined that the online identity is associated with the firstinstant messaging service. Determining that the online identity isassociated with the first instant messaging service may includedetermining that the online identity is associated with an account atthe first instant messaging service. Determining that the onlineidentity is associated with the first instant messaging service mayinclude determining that the online identity is registered with thefirst instant messaging service.

The traffic delivery rules may be customized for the online identityand, as such, the traffic delivery rules may govern receipt of themessage based on preferences of the online identity. The trafficdelivery rules may be customized for a sender of the message and, assuch, the traffic delivery rules may regulate delivery of the messagebased on preferences of the sender of the message.

It may be determined that the online identity is associated with thesecond instant messaging service. Determining that the online identityis associated with the second instant messaging service may includedetermining that the online identity is associated with an account atthe second instant messaging service. Determining that the onlineidentity is associated with the second instant messaging service mayinclude determining that the online identity is registered with thefirst instant messaging service.

Accessing the traffic delivery rules may include accessing trafficdelivery rules stored at the first instant messaging service. Accessingthe traffic delivery rules may include accessing traffic delivery rulesstored at the second instant messaging service. The traffic deliveryrules may include instructions for delivery of the message through oneor more instant messaging services. The traffic delivery rules mayinclude instructions for delivery of the message based on a type ofclient device. The traffic delivery rules may include instructions fordelivery of the message based on a particular time of day. The trafficdelivery rules may include instructions for delivery of the message to aclient device at which the online identity has an active presence. Thetraffic delivery rules may instructions for determining whether theonline identity has a direct presence at the first instant messagingservice and, in the absence of the direct presence at the first instantmessaging service, delivering the message to the online identity throughthe second instant messaging service. The traffic delivery rules mayinclude instructions for directing the first instant messaging serviceto deliver the message to the online identity through the second instantmessaging service.

Sending at least the portion of the traffic delivery rules and themessage to the second instant messaging service may include appendingthe traffic delivery rules to the message and sending the message withthe appended traffic delivery rules to the second instant messagingservice. Sending at least the portion of the traffic delivery rules andthe message to the second instant messaging service may include sendingat least the portion of the traffic delivery rules to the second instantmessaging service separate from submitting the message to the secondinstant messaging service. Sending at least a portion of the trafficdelivery rules to the second instant messaging service separate fromsubmitting the message to the second instant messaging service mayinclude resubmitting the traffic delivery rules to the second instantmessaging service as the traffic delivery rules changes.

Sending at least the portion of the traffic delivery rules may includesending less than all of the traffic delivery rules to the secondinstant messaging service. Sending less than all of the traffic deliveryrules to the second instant messaging service may include sending lessthan all of the traffic delivery rules customized for the onlineidentity to the second instant messaging service. Sending less than allof the traffic delivery rules to the second instant messaging servicemay include sending less than all of the traffic delivery rulescustomized for a sender of the message to the second instant messagingservice. The individual includes an operator of the online identity or asender of the message.

In another aspect, a message directed to an online identity may bereceived from a source at a first instant messaging service. Trafficdelivery rules stored at a second instant messaging service areaccessed. The traffic delivery rules are configured to controldelivering of the message and are customized for an individual. Themessage is delivered to the online identity according to the trafficdelivery rules.

Implementations may include one or more of e following features. Forexample, it may be determined that the online identity has a connectionto the first instant messaging service through a third instant messagingservice. The third instant messaging service may access the trafficdelivery rules stored at the second instant messaging service anddelivers the message to the online identity according to the trafficdelivery rules.

The second instant messaging service may be informed of the onlineidentity presence at the third instant messaging service and, inresponse, receiving, from the second instant messaging service, thetraffic delivery rules that are customized for the online identity. Theindividual may include an operator of a client system using the onlineidentity.

Implementations of the described techniques may include hardware, amethod or process, or computer software on a computer-accessible medium.

The details of one or more implementations are set forth in theaccompanying drawings and the description below. Other features will beapparent from the description and drawings, and from the claims.

DESCRIPTION OF DRAWINGS

FIG. 1 illustrates an open name space network that includes a clientsystem connected to a first presence-based system (“PBS1”) and a secondpresence-based system (“PBS2”) via a network.

FIGS. 2A-2B illustrate processes for allowing access to PBS1 with anonline identity that is associated with the domain of PBS1.

FIG. 3A illustrates a process for allowing access to PBS2 with an onlineidentity that is not associated with the domain of PBS2.

FIGS. 3B-3B illustrate various methods used by PBS2 to authenticate anonline identity,

FIG. 4A illustrates a graphical user interface used to enable input ofan online identity and credentials.

FIG. 4B illustrates a process for allowing an online identity, which isentered using the graphical user interface of FIG. 4A and which includesan obscure domain, to access PBS2, which does not have interoperabilitywith presence-based system associated with the obscure domain.

FIG. 5 illustrates a registration form that an operator of a clientdevice may complete in order to gain access to a presence-based system.

FIG. 6 illustrates online presence of online identities at apresence-based service of PBS2.

FIG. 7 illustrates, in more detail, the credentials database of FIG. 3Dthat stores credentials of an online identity.

FIGS. 8A-9C illustrate various methods for informing foreignpresence-based services of presence information for an online identity.

FIG. 10 illustrates an example of a table containing presenceinformation.

FIG. 11 illustrates an open name space network that includes a clientmobile device.

FIG. 12 illustrates a process for allowing a computer operator using anonline identity to gain access to PBS2, and later, but concurrently, aclient mobile device operator using the same online identity to gainaccess to PBS1.

FIGS. 13A-13B illustrate processes for authenticating and authorizingthe operator of the client system of FIG. 12 to access PBS2, projectingchanges in presence to PBS2 subscribers, and publishing the changes inpresence to PBS1.

FIG. 14 illustrates a process for authenticating and authorizing theoperator of the client mobile device of FIG. 12 to access PBS1,optionally projecting changes in presence to PBS1 subscribers, andoptionally publishing changes in presence to PBS2.

FIG. 15 illustrates a process for PBS1 to publish full attribution orlimited attribution of changes in presence.

FIG. 16A illustrates an ample of a table storing presence information.

FIG. 16B illustrates an example of a counter used to track when anonline identity is used to access one or more presence-based systems.

FIG. 16C illustrates an example of a table storing presence information.

FIGS. 17A-17C illustrate various methods for delivering traffic to anonline identity at multiple client devices through PBS1 and/or PBS2.

FIG. 18 illustrates a process for allowing a computer operator using anonline identity to gain access to PBS2, and later, but concurrently, aclient mobile device operator using the same online identity to gainaccess to PBS2.

FIGS. 19A-19C illustrate various methods for communicating trafficdelivery rules hosted by PBS1 to PBS2.

FIG. 20 illustrates an example of content within a traffic deliveryrules database hosted by a presence-based system.

DETAILED DESCRIPTION

Referring generally to FIG. 1, a client system 110 may attempt to accessa first presence-based system (“PBS1”) 120 operated by a firstadministrative domain and a second presence-based system (“PBS2”) 130operated by a second, different administrative domain, using an onlineidentity that is included in an open name space. The open name space mayinclude one or more electronic addresses that include a domain name. Forexample, the online identities may have the form username@domain. Forinstance, user@PBS1.com may be an online identity associated with PBS1(e.g., registered with PBS1), with “user” being the username and“PBS1.com” being the domain name of PBS1. The online identity may or maynot be a valid e-mail address for the user of the online identity. Theuser may therefore register an online identity that is used in othercontexts (e.g., e-mail) or used with respect to at least one of severalinteroperating presence-based services, such that the user can leveragethe open name space without seeking any additional online identities orabandoning the use of any existing online identities. That is, the usermay register the online identity with one domain, and use that identityto access other domains. For instance, a user can use an existing e-mailaddress (which may also be registered as the online identity for aninstant messaging (IM) service operated in the same administrativedomain as the e-mail) as an online identity with respect to one or moreother instant messaging services with which the user has not otherwiseregistered. The online identity simply reflects the e-mail address,including the user domain/source/origin through which the e-mail addresswas initially registered. In other words, a user may register an onlineidentity with a first administrative domain that uses the identity as ane-mail address and as an identifier for presence-based services offeredby the domain. The user then may use the online identity to accesspresence-based services operated by other, administrative domains,without specifically registering the online identity with those otheradministrative domains. For example, the user may have registereduser@yahoo.com for e-mail and instant messaging operated by Yahoo!®. Theuser then may use the online identity user@yahoo.com to access the IMservice operated by AOL® (referred to as AIM®).

Referring again to FIG. 1, an open name space network 100 includes aclient system 110, PBS1 120, PBS2 130, and a network 139, The clientsystem 110 includes client software 112 configured for presence-basedservice of PBS1 120 or PBS2 130. The operator of client system 110 usesthe client software 112 to communicate with PBS1 120 or PBS2 130 via thenetwork 139. PBS1 120 includes a login server 122 and a presence-basedservice 124. Similarly, PBS2 130 includes a login server 132 and apresence-based service 134. Login server 122 or 132 authorizes access byclient system 110 to the presence-based systems 120 and 130.Presence-based service 124 and/or 134 allows the client system 110 tocommunicate with other client systems connected to one or moreinteroperable presence-based services 124 or 134 via the network 139.

For example, PBS1 120 and PBS2 130, respectively, may represent AOL® andEarthLink® interne service providers, and presence-based services 124and 134 for PBS1 120 and PBS2 130 may represent AOL® IM and EarthLink®IM infrastructures, respectively. In this situation, as will bedescribed in greater detail below, an online identity identified asuser@EarthLink.com is able to send and receive instant messages andshare presence information with users of the AOL® IM service and theEarthLink® IM service, regardless of whether user@EarthLink.com islogged into clients of either or both of those services.

FIGS. 2A-2B illustrate processes 200A and 200B, respectively forallowing an online identity to access a presence-based system, e.g.,PBS1 120, associated with a domain of the online identity (e.g.,user@PBS1.com logs into PBS1). In particular, FIG. 2A illustrates ageneral process 200A for allowing a client system to access apresence-based system, e.g., PBS1, using an online identity associatedwith the domain of PBS1. Process 200A begins with the client system 110initiating communication with PBS1 120 using an online identity,user@PBS1.com (201 a). To do so, the client system 110 may use theclient software 112 configured for the presence-based service 124 ofPBS1 120. In particular, the client system 110 may use the clientsoftware 112 to submit the online identity and credentials associatedtherewith to PBS1 120. PBS1 120 is associated with the domain of theonline identity because the online identity was initially registeredwith that presence-based system, and hence reflecting the domain nameafter the “@” symbol.

In response to the initiated communications, the login server 112 ofPBS1 120 authenticates the client system (202 a) and communicates theauthentication to the presence-based service 124. The presence-basedservice 124 projects changes in presence of user@PBS1.com to PBS1 120users that subscribe to presence information for user@PBS1.com (203 a).This may include informing such subscribers that user@PBS1.com haslogged into presence-based service 124 and is available to chat.

Referring to FIG. 2B, process 200B is similar in some respects to theprocess 200A of FIG. 2A, but provides a more detailed example ofauthenticating and authorizing the client system 110 to access PBS1using the online identity, user@PBS1.com. Process 200B begins with theclient system 110 submitting a request to access presence-based service124 offered by PBS1 120 (210 b). The client system 110 may use theclient software 112 configured for PBS1 to submit the request, which mayinclude the online identity user@PBS1.com. PBS1 120 receives the request(211 b), and, in response, PBS1 120 requests credentials foruser@PBS1.com (212 b). In a slightly modified scenario, the clientsystem 110 provides PBS1 120 with the credentials as part of theoriginal request; thus, eliminating the need for PBS1 120 to solicit theclient system 110 for credentials.

The client system 110 receives the request for the credentials (213 b)and requests the credentials from the operator of the client system 110(214 b). In response, the operator of the client system 110 provides thecredentials (e.g., password), which are submitted to PBS1 120 (215 b).PBS1 120 receives the credentials (216 b) and authenticatesuser@PBS1.com (217), To authenticate user@PBS1.com, the login server 122matches the online identity and password to the information stored in acredentials database. If such match exists, then the login server 122enables the client system 110 to access the presence-based service 124offered by PBS1 120 (218 b and 219 b). The presence-based service 124projects the online presence of the online identity to users of PBS1 120that have subscribed to such information (220 b) (e.g., list the onlineidentity among their instant message contact list) or who make aspecific request for knowledge that user@PBS1.com has logged into thepresence-based service 124 offered by PBS1 120 and is available to chat.

FIG. 3A illustrates a process 300A for allowing a client system 110 toaccess a presence-based system, e.g., PBS2 130, using an online identitythat is not associated with the domain of PBS2 130 (e.g., user@PBS1.comlogs into PBS2 130). Process 300A begins with the client system 110initiating communication with PBS2 130, which has interoperability withPBS1 120 (301 a). To do so, the client system 110 may use the clientsoftware 112 configured for PBS2 130. In particular, as part ofinitiating communications with PBS2 130, the client software 112 mayprovide the online identity, e.g., user@PBS1.com, and associatedpassword to a login server 132 of PBS2 130. PBS2 130 recognizes that theonline identity is associated with PBS1 120 due to the domain name inthe online identity. In one implementation, PBS2 130 consults a tablethat includes association between the domain names and thepresence-based service associated therewith to identify thepresence-based service (e.g., PBS1 120) that is associated withuser@PBS1.com. In another implementation, PBS2 130 may provide thedomain name to a domain name server to identity the presence-basedservice associated with user@PBS1.com. In response, the domain nameserver identifies PBS1 120, resolves an IP address associated with PBS1120, and provides this information to PBS2 130 to enable PBS2 130 tocommunicate with PBS1 120.

PBS2 130 then initiates communication with PBS1 120, the presence-basedsystem associated with the domain of user@PBS1.com, in order toauthenticate user@PBS1.com (302 a) Upon authentication, PBS2 130 enablesaccess by the client system 110 to the presence-based service 134 ofPBS2 130. The presence-based service 134 projects the online presence ofuser@PBS1.com to users of PBS2 130 (303 a). As suggested with respect toFIGS. 2A-2B, the online presence is projected to users of PBS2 130 thatsubscribe to such information (e.g., list the online identity amongtheir instant message contact list) or who make a specific request forknowledge of user@PBS1.com's presence. Presence may also be reflectedfor aliases associated with the online identity, user@PBS1.com, whichaliases may be accessed at either of PBS1 120 or PBS2 130.

FIGS. 3B and 3C, illustrate various processes used by PBS2 130 toauthenticate an online identity, user@PBS1.com, as generally illustratedby the operation block (302 a) in FIG. 3A. In particular, in FIG. 3B,PBS2 130 delegates the authentication of the online identity to PBS1120. In contrast, in FIG. 3C, PBS2 130 request authenticationinformation from PBS1 120 and PBS2 130 performs the authentication.

Processes 300B and 300C of FIGS. 3B and 3C, while similar in somerespects to process 300A of FIG. 3A, each provide a more detailedexample of authenticating and authorizing the client system 110 toaccess PBS2 130 using the online identity, user@PBS1.com. FIG. 3Billustrates a process 300B that enables PBS2 130 to delegateauthentication of user@PBS1.com to PBS1 120. Process 300B begins withthe client system 110 submitting a request to access presence-basedservice 134 offered by PBS2 130. The client system 110 may use theclient software 112 installed on the computer 110 and configured forpresence-based service 134 to submit the request to access thepresence-based service 134. The request may include the online identity,user@PBS1.com.

PBS2 130 receives the request (311 b) and, in response, requestscredentials associated with user@PBS1.com (312 b). The client system 110receives the request for credentials (313 b) and requests thecredentials from the operator of the client system 110 (314 b). Theoperator of the client system 110 provides the credentials (e.g.,password), which are submitted to PBS2 130 (315 b), PBS2 130 receivesthe credentials (316 b) and recognizes that user@PBS1.com and/or thecredentials associated therewith is associated with PBS1 120. As notedabove with respect to FIGS. 2A-2B, PBS2 130 may recognize thatuser@PBS1.com is associated with PBS1 120 by referencing the domain nameincluded in user@PBS1.com. To this end, PBS2 130 references the domainname appearing after the @ symbol to recognize the domain associatedwith user@PBS1.com.

Upon recognizing that user@PBS1.com is associated with PBS1 120, PBS2130 submits to PBS1 120 (or proxy thereof) the online identity and thereceived credentials, e.g., password, (318 b). PBS1 120 receives theonline identity and the credentials (319 b), authenticates the onlineidentity (320 b), and returns an indication of authentication to PBS2130 (321 b). To authenticate user@PBS1.com, PBS1 120 may use the loginserver 122. The login server 122 attempts to match user@PBS1.com and thecredentials to stored information in its credentials database. If amatch exists, the login server 122 returns the indication of theauthentication to PBS2 130.

PBS1 120 simply notifies PBS2 130 of whether or not user@PBS1.com hasbeen successfully authenticated (321 b). PBS2 130 receives thisnotification (323 b) and based on this information, PBS2 130 provides ordenies access to the client system 110 accordingly (324 b-325 b). If theclient system 110 is provided access, PBS2 130 projects presenceinformation for user@PBS1.com to PBS2 130 subscribers who havesubscribed to such information (327 b). Similarly, PBS1 may optionallyproject the presence information for user@PBS1.com to PBS1 120subscribers who have subscribed to such information (322 b).

In a slightly modified scenario, PBS2 130 may optionally store, withinits credentials database, the credentials submitted with respect touser@PBS1.com and record an indication of whether or not suchcredentials were used to successfully authenticate user@PBS1.com (326b). Thereafter, subsequent requests made on behalf of user@PBS1.com arehandled without requiring input from PBS1 120. In another variation ofthis scenario, PBS2 130 obtains certain information from the operator ofthe client system 110 who is using an online identity corresponding to adifferent domain (e.g., user@PBS1.com). Specifically, for example, PBS2130 requests completion of a registration form 500 of FIG. 5, inresponse to which PBS2 130 receives information such as date of birth,gender, country of origin, zip code, and alternate e-mail address. Theregistration form 500 also may elicit a credit card number for verifyingthe received information. After verification, PBS2 130 stores the onlineidentity's credentials into its credentials database, conditioned (underone scenario) upon a determination that the operator of the clientsystem 110 meets a minimum age requirement, as shown in FIG. 7.

Referring to FIG. 7, the login server 132 of PBS2 130 includes a loginprocess 132 a and a credentials database 132 b. The credentials database132 b stores credentials, e.g., e-mail address, password, age, andcredit card information. Using these variations, subsequent attempts touse the online identity user@PBS1.com to log into PBS2 130 can behandled using a simplified authentication process that more closelyresembles that shown by FIGS. 2A-2B.

Diverging from each of the above scenarios, PBS2 130 may be configuredto itself perform the authentication of the online identity associatedwith other domains such as user@PBS1.com. That is, PBS2 130 does nothave to delegate to PBS1 120 the authentication process. Instead,referring to FIG. 3C, PBS2 130 may use a process 300C to request thecredentials information from PBS1 120, and PBS2 130 may use thecredential information to perform the authentication process.

Process 300C begins with actions (310 c-317 c) which are the same asactions (310 b-317 b), and, as such, are previously described withrespect to actions (310 b-317 b). Process 300C differs from process 300Bbecause it includes PBS2 130 requesting credentials from PBS1 120 (318c) and authenticating user@PBS1.com mailto:user@PBS1.com based on thereceived credentials (321 c). In particular, PBS2 130 submits a requestfor credentials associated with the online identity to PBS1 120 (318 c).PBS1 120 receives the request for credentials (319 c) and provides PBS2130 with the credentials associated with the online identity (320 c).PBS2 130 receives the credentials and compares it to the credentialsreceived from the client system 110 to determine whether a match exists.If so, PBS2 130 authenticates the online identity (321 c).

Notably, the variations described above with respect to process 300B ofFIG. 3B also apply to process 300C of FIG. 3C scenario, particularlysince each involves PBS2 130 performing an authentication step.Specifically referring to FIG. 3D, a process 300D may be used toidentify whether PBS2 130 previously stored the credentials informationat the conclusion of the previous processes 300B and 300C, and, if so,to authenticate the online identity internally. Process 300D begins withthe client system 110 submitting a request to access presence-basedservice 132 offered by PBS2 130 (310 d). As noted above, the clientsystem 110 may use the client software 112 configured for PBS2 130 toaccess the presence based service 134. The request may include theonline identity, user@PBS1.com.

The login processor 132 a receives the request (311 d) and, in response,requests credentials for user@PBS1.com (312 d). The client system 110receives the request for credentials (313 d) and requests thecredentials from the operator (314 d). The operator of the client system110 provides the credentials, which are submitted to the login processor132 a (315 d). The login processor 132 a receives the credentials (316d) and submits a request to access credentials database 132 b (317 d).The credentials database 132 b receives the request (318 d) and providesaccess to the login processor 132 a (319 d). The login processor 132 areceives access (320 d) and compares the received credentials to thosein the credentials database in order to verify the received credentials(321 d). The login processor 132 a attempts to identify a match for theonline identity and determine whether the online identity can log intoPBS2 130 without relying on PBS1 120. If PBS2 130 had stored theinformation at the conclusion of the previous processes 300B or 300C, asoptionally illustrated by FIGS. 3B and 3C, then the login processor 132a authenticates the online identity using the information in thecredentials database 132 b. Otherwise, the login process 132 a relies onPBS1 120 for authentication in the manner as illustrated in FIGS. 3B and3C.

Specifically, if the login processor 132 a determines that no matchexists (322 d), then the login processor 132 a relies on PBS1 120 inorder to verify the received credentials. In particular, the loginprocessor 132 a recognizes that user@PBS1.com is associated with PBS1120 (323 d) and submits user@PBS1.com and the received credentials toPBS1 120 to enable PBS1 120 to authenticate user@PBS1.com and return anotification of authentication (324 d-327 d), similar to actions (318b-323 b) described with respect to process 300B of FIG. 3B.Alternatively, the login processor 132 a may submit a request to obtaincredentials information from PBS1 120 and perform the authenticationitself (324-327 d), similar to actions (318 c-321 c) described withrespect to process 300C of FIG. 3C.

In another implementation, when an operator of the client system 110attempts to access PBS2 30 using an online identity, user@PBS1.com, PBS2130 recognizes that the online identity is associated with anotherpresence-based system (e.g., PBS1 120) and instructs or redirects theclient software 112 to authenticate with PBS1 120 first. In particular,PBS2 130 redirects the client software 112 to PBS1 120 forauthentication. PBS1 120 then authenticates user@PBS1.com and generatesan authentication ticket, which PBS1 120 then sends to the clientsoftware 112. The authentication ticket may be used by the clientsoftware 112 to access PBS2 130. As such, the client software 112presents the authentication ticket to PBS2 130 to gain access to PBS2130. Upon receiving the authentication ticket, PBS2 130 validates theauthentication ticket with PBS1 120. If the authentication ticket isvalidated, PBS2 130 enables the client system 110 to access PBS2presence-based service 134.

FIG. 3E illustrates an example of a process 300E that may be used toimplant the above described techniques. Process 300E begins with theclient system 110 submitting a request to access presence-based service134 offered by PBS2 130 (310 e). The client system 110 may use theclient software 112 configured for PBS2 130 to submit the request. Inone example, the client software 112 may provide an interface on theclient system 110 for enabling the operator to provide the onlineidentity (and possibly credentials) to be submitted with the request.

PBS2 130 receives the request (311 e) and identifies that user@PBS1.comis associated with PBS1 120 (312 e). To identify the domain with whichuser@PBS1.com is associated with, in one implementation, PBS2 130references the domain name appearing after “@” symbol, which identifiesthe domain with which the online identity is registered. In a slightlydifferent scenario, PBS2 130 requests that the computer operatoridentify which domain the online identity is registered. For example,PBS2 130 may instruct the client software 112 to include a field (e.g.,a domain name field) that solicits the computer operator for suchinformation.

In either case, upon identifying that user@PBS1.com is associated withPBS1 120, PBS2 130 redirects the client software 112 to PBS1 120 forauthentication (313 e). The client software 112 receives the redirectionnotice (314 e) and submits the request for authentication to PBS1 120(315 e). In one implementation, to submit the request for authenticationto PBS1 120, the client software 112 may be modified to include, withinits user interface, specific authentication fields associated with PBS1120. In one example, the specific field may include a user name fieldand a password field, each of which carrying the PBS1 120 identifier, toinform the computer operator they are associated with PBS1 120. Inanother implementation, the client software 112 may launch another userinterface (e.g., a web page) associated with PBS1 120 and prompt thecomputer operator to complete the fields within the user interface. Thecomputer operator may enter the online identity within one of the fieldsand submit it to PBS1 120.

PBS1 120 receives the request for authentication (316 e) and requestscredentials for user@PBS1.com (317 e), The client system 110 receivesthe requests for credentials and requests credentials from the computeroperator (318 e). The computer operator provides the credentials (e.g.,password), which are submitted to PBS1 120 (319 e). In a slightlymodified scenario, the computer operator may submit the credentialsalong with the online identity thereby relieving PBS1 120 from having torequest it.

PBS1 120 receives the credentials (320 e) and authenticatesuser@PBS1.com by comparing the received online identity and passwordwith the stored credentials within the credentials database (321 e).Upon authenticating user@PBS1.com, PBS1 120 generates an authenticationticket to enable the client system 110 to access PBS2 130 (322 e) usingthe online identity user@PBS1.com. PBS1 120 returns the authenticationticket to the client software 112 (323 e). The client software 112receives the authentication ticket (324 e) and submits the ticket withthe online identity to PBS2 130 (325 e).

PBS2 130 receives the ticket (326 e) and requests, from PBS1 120,validation of the ticket (327 e). PBS1 120 receives the request (328 e),validates the ticket and returns a notice of validation to PBS2 130 (329e). PBS2 130 receives the notice of validation and allows the clientsystem 110 to access PBS2 130 using the online identity user@PBS1.com(330 e and 331 e).

In a slightly modified scenario, the client software 112 may beconfigured to automatically send the authentication request to PBS1 120when the computer operator uses user@PBS1.com as an online identity toaccess PBS2 presence-based. service 134. In this manner, process 300Emay be modified such that instead of submitting the request to PBS2 130,the client software 112 recognizes the online identity is associatedwith PBS1 120 and instead the client software 112 sends theauthentication request to PBS1 120. The modified process would continuewith the remaining actions (318 e-331 e). In another implementation,after identifying that the online identity is associated with PBS1 120and directing the client software 112 to PBS1 120, PBS2 130 may instructthe client software 112 to automatically send future authenticationrequests to PBS1 120. For example, the client software 112 may be ableto use different login modules, each one for a different system, andPBS2 130 may instruct the client software 112 to use the module for PBS1120.

FIG. 4A illustrates a graphical user interface 400A used to enable inputof an online identity and credentials therefor. Specifically, in FIG.4A, an e-mail address is used as the online identity. In this case, acomputer operator attempts to log into PBS2 130 using the onlineidentity user@xyz.com, which is associated with a domain (xyz.com) thatis not associated with PBS2 130 or any of the presence-based systemswith which PBS2 130 has established interoperability. In response tosuch an attempt, and as illustrated by process 400B shown in FIG. 4B,PBS2 130 elicits completion by the computer operator of a registrationform, such as the one shown in FIG. 5. Process 400B begins with clientsystem 110 submitting a request to access presence-based service 134offered by PBS2 130 using the online identity user@xyz.com (410 b). PBS2130 receives the request (411 b) and, in response, requests credentialsfor user@xyz.com (412 b). The client system 110 receives the request forcredentials and requests the credentials from the operator of the clientsystem 110 (413 b). The operator of the client system 110 provides thecredentials which are submitted to PBS2 130 (414 b). PBS2 receives thecredentials (415 b) and submits a request for registration to the clientsystem 110 (416 b). As part of submitting the request for registration,PBS2 130 may submit the registration form 500 of FIG. 5 to the clientsystem 110 for completion by the operator.

The client system 110 receives the request for registration (417 b) andthe operator completes the registration form, which is forwarded to PBS2130 (418 b). PBS2 130 receives the completed registration form (419 b)and sends a verification e-mail to the online identity of the computeruser and requests a reply to the e-mail (420 b). The operator of theclient system 110 receives the verification e-mail (421 b) and repliesto the e-mail (422 b). Once PBS2 130 receives a reply e-mail (420 b),PBS2 130 allows the client system 110 to access the presence-basedservice 134 (425 b and 426 b). That is, PBS2 130 conditions access bythe client system 110 upon receipt of a reply to the verification e-mailsent to the e-mail address entered by the computer operator as an onlineidentity, as such a reply suggests valid operation by the computeroperator of an account with the unassociated domain wider the identifiede-mail address. Similar to previous implementations, PBS2 130 may storeinformation received during authentication concerning credentials of theonline identity, user@xyz.com, and their validity, so that it does nothave to seek assistance from other systems or user e-mail verificationthe next time access is sought by user@xyz.com to PBS2 130 (424 b).

At the conclusion of processes such as those illustrated by FIGS. 2A-2B,3A-3E, and/or 4B, or those leveraging the graphical user interfaces ofFIGS. 4A and 5, online presence of the online identity, user@PBS1.comand/or user@xyz.com, may be reflected at the presence-based service intowhich a computer operator using the online identity logged in. Referringto FIG. 6, an example of a user interface 600 illustrates onlinepresence of the online identities, user@PBS1.com and user@xyz.com, at apresence-based service of PBS2 130 into which operators using variousonline identities have logged in. More specifically, it shows presenceby, among others, user@PBS1.com and user@xyz.com on a contact list of aPBS2 130 subscriber. Thus, the PBS2 130 subscriber may send messages touser@xyz.com and/or user@PBS1.com or receive messages from them.

In addition to the interoperability illustrated with respect to FIGS.2A-4B, which, among other things, enables authentication at apresence-based service based on information or processes at anotherpresence-based service, presence information may be communicated fromone such service to another to be made apparent to subscribers of thedifferent services. In addition, communications similarly may be sentand received by subscribers of the different services, all irrespectiveof whether a computer user gains access to a presence-bases system usingclient software or hosted portals provided by the domain to which itsonline identity is associated or another different domain service. Inthis manner, PBS2 130 may be configured to communicate with other (e.g.,foreign) interoperable presence-based services, e.g., PBS1 120,associated with the domain of the online identity (user@PBS1.com in thisexample) and to inform these services of presence by the online identitythrough the PBS2 presence-based service 134, or changes thereto, e.g.,log in, log off, idle, and away. There are many ways for informing theforeign presence-based services of the change in presence, several ofwhich are illustrated in FIGS. 8A-9C. First, as shown in each of FIGS.8A-8C, PBS2 130, which has locally authenticated the online identity,user@PBS1.com, informs a foreign presence-based service (e.g., PBS1 120)of presence by user@PBS1.com. Second, as shown in FIGS. 9A-9C, theforeign presence-based service, e.g., PBS1 120, is informed ofuser@PBS1.com presence by virtue of having to authenticate theuser@PBS1.com (an example of which was illustrated in FIG. 3B).

FIG. 8A illustrates a process 800A in which PBS2 130 accesses a locallist of foreign interoperable presence-based services to publish thechange in presence associated with the online identity to all or asubset of all the foreign interoperable presence-based servicesappearing on the list. Process 800A begins with the client system 110initiating communication with PBS2 130. To that end, the computeroperator may use a user interface, such as, for example, the userinterface 400 of FIG. 4A to enter the online identity and credentials.In particular, for instance, the computer operator may enteruser@PBS1.com within the screen name field of the user interface 400,enter the credentials associated with user@PBS1.com within the passwordfield, and then select the “sign on” button within the user interface400. The selection of the “sign on” button results in the client system110 sending a request to PBS2 130 for access to PBS2 130, with therequest including the online identity and the credentials.

PBS2 130 receives the request and authenticates user@PBS1.com, withoutnotifying or relying upon PBS1 120 (802 a). For instance, PBS2 130 mayauthenticate user@PBS1.com using credentials stored in the credentialsdatabase 132 b as a result of process 300C or 300D. After successfulauthentication of user@PBS1.com, PBS2 130 accesses a profile thatincludes a local list of foreign interoperable presence-based services(803 a), The local list enables PBS2 130 to consult its own publicationrules in publishing presence information to other services (804 a). Forexample, PBS2 130 may publish the presence information to all of theforeign presence-based services on the list. Alternatively, PBS2 130 maypublish the presence information to the presence-based services that areassociated with the domain of the online identity, e.g., PBS1 120 in theexample involving user@PBS1.com. Alternatively, PBS2 130 may publish thepresence information to a subset or more of the services on the list.For instance, PBS2 130 may not provide access to presence informationfor its subscribers by subscribers of obscure services that do not haveinteroperability with PBS2 130 service or other services on the list.

In another implementation, PBS2 130 may provide its local list ofinteroperable services to a single or limited set of foreignpresence-based service(s) (or proxy therefor) and request or rely uponthe foreign presence-based service(s) (or proxy thereof) to publish thechange in presence to other services. In yet another implementation,instead of or in addition to PBS2 130 accessing a list to identify otherforeign interoperable presence-based services (e.g., PBS1 120) that maybe interested in presence information associated with user@PBS1.com,PBS2 130 receives a request from other foreign interoperable presencebased services, notifying PBS2 130 of their interest in presenceinformation associated with user@PBS1.com.

FIGS. 8B and 8C illustrate processes 800B and 800C performed when thelist of interoperable services is stored at or accessed by a foreignpresence-based service, e.g., PBS1 120. Referring to FIG. 8B, process800B includes actions (801 b and 802 b) that are the same as actions(801 a and 802 a) of FIG. 8A and, as such, are previously describedabove with respect to actions (801 a and 802 a). After authenticatinguser@PBS1.com, PBS2 130 recognizes that user@PBS1.com is associated witha foreign presence-based service, e.g., PBS1 120, because ofuser@PBS1.com's domain (803 b). Thus, PBS2 130 provides an indication ofthe authentication for user@PBS1.com to the foreign presence-basedservice that is associated with the user@PBS1.com's domain (804 b). PBS2130 optionally projects change in presence associated with user@PBS1.comto PBS2 subscribers (805 b).

Upon being notified, the foreign presence-based service (e.g., PBS1 120)accesses list of interoperable presence-based services (806 b) and theforeign presence-based service consults its publication rules andpublishes the information in a manner consistent with its publicationrules to none, some, or all of the services on a list located at oraccessed by the foreign presence-based service (807 b).

Alternatively, referring to FIG. 8C, PBS2 130 may request the list fromthe foreign presence-based service, and may itself publish to none,some, or all of the services on the list after consulting PSB2 130 (orforeign-provided) publication rules as shown in FIG. 8C. FIG. 8Cillustrates a process 800C used by PBS2 130 to request a list ofinteroperable presence-based services (and optionally, publicationrules) from the foreign interoperable presence-based service and topublishes to none, some, or all of the services on the list. Actions(801 c-803 c) of the process 800C are similar to the actions (801 b-803b) of the process 800B, and, as such, are previously described withrespect to actions (801 b-803 b).

Process 800C differs from process 800B in that in process 800C, PBS2 130does not rely on PBS1 120 for publication. Instead, PBS2 130 requeststhe list of interoperable presence-based services (and, optionally,publication rules) from the foreign interoperable presence-based service(804 c). PBS2 130 receives the list of interoperable presence-basedservices (805 c), and PBS2 130 consults its publication rules (and/orrules provided) to provide presence information of user@PBS1.com tonone, some or all services on the list (806 c).

FIGS. 9A-9C illustrate processes 900A-900C, respectively, in which theforeign interoperable presence-based service (e.g., PBS1 120) isinformed of change in presence of an online identity, user@PBS1.com, byvirtue of having to authenticate user@PBS1.com. Specifically, FIG. 9Aillustrates process 900A in which PBS2 130 solicits PBS1 120 toauthenticate a computer operator using an online identity and to publishthe presence information associated with the online identity. Process900A begins with client system 110 initiating communication with PBS2130 using the online identity, user@PBS1.com (901 a). In response, PBS2130 communicates with PBS1 120, the presence-based system associatedwith the user@PBS1.com, s domain, to authenticate user@PBS1.com (902 a).In one example, PBS2 130 may submit to PBS1 120 the online identity andthe credentials associated therewith and may request PBS1 120 tocarryout the authentication step, as shown by process 300B of FIG. 3B,PBS1 120 then authenticates user@PBS1.com (903 a). In anotherimplementation, PBS2 130 may request the credentials information fromPBS1 120 and PBS2 130 uses the credentials information to authenticatethe online identity, as shown by process 300C of FIG. 3C. PBS2 130 thenregulates access to the client system based on the authentication. PBS2130 also may project changes in presence experienced by the onlineidentity to its subscribers.

After authentication, PBS1 120 accesses a list of interoperablepresence-based services that is stored at PBS1 120 (904 a). PBS1 120consults its publication rules and publishes the presence informationassociated with the online identity to none, some, or all of thepresence-based services on the list accordingly (905 a). In oneimplementation, PBS1 120 does not publish the change in presence to PBS2130 because PBS2 130 has already projected this information to itssubscribers.

Referring to FIGS. 9B-9C, the list of interoperable services is notstored at PBS1 120 (or at least not relied upon from PBS1 120), and PBS1120 either requests the list from PBS2 130 or provides PBS2 130 withauthentication information so that PBS2 130 can publish the change inpresence to one or more interoperable services. Specifically, FIG. 9Billustrates process 900B in which PBS1 120 requests the list from PBS2130 and PBS1 120 publishes to none, some, or all of the interoperablepresence-based services that are on the list in a manner consistent withPBS1 120 publication rules. Process 900B includes actions (901 b-903 b),which are the same as actions (901 a-903 a) and, as such, are previouslydescribed with respect to actions (901 a-903 a). Process 900B differsfrom process 900A in that in process 900B, PBS1 120 requests a list ofinteroperable presence-based services from PBS2 130 (904 b), PBS2 130provides the list to PBS1 120 (905 b), and PBS1 120 publishes thepresence information associated with the online identity to none, some,or all the services on the list consistent with PBS1 120 publicationrules (906 b). Alternatively, PBS1 120 may access PBS2 130 publicationrules and publish the change in presence to none, some, or all of theinteroperable presence-based services that are on the list in a mannerconsistent with PBS2 130 publication rules.

Referring to FIG. 9C, PBS1 120 provides a notification of authenticationto PBS2 130, and PBS2 130 publishes to the interoperable presence-basedservices that are on the list consistent with PBS2 130 (orforeign-provided) publication rules. Process 900C includes actions (901c-903 c), which are the same as actions (901 a-903 a) and, as such, arepreviously described with respect to actions (901 a-903 a). Process 900Cis different from processes 900A and 9003 because, in process 900C, PBS1120 provides an indication of authentication to PBS2 130 (904 c) andPBS2 130 accesses the list of interoperable presence-based services (905c) and publishes the presence information to none, some, or all theservices on the list consistent with PBS2 130 publication rules (906 c).

During the publication processes illustrated by FIGS. 8A-8C and 9A-9C,the information that is published can include the online identity (e.g.,e-mail address), reference ID, and identity of service through whichlogin was achieved (e.g., PBS2), among other information. As shown inFIG. 10, a table 1000 of such information may be maintained at allinteroperable systems, or some subset or proxy therefor (e.g., in thedomain services only). This information may be used to assist theservices to keep track of the local presence of the online identity forpurposes of delivering messages to the online identity as describedfurther below.

Referring to FIG. 11, an open name space network 1100 is similar to thatof FIG. 1 but includes a client mobile device 140. The client mobiledevice 140 includes client software 142 configured for presence-basedservice associated with PBS1 120 or PBS2 130. The presence-based systems120 and 130 are configured to perform several operational acts to managea situation in which online presence for an online identity (e.g.,user@PBS1.com in keeping with previous examples) is already establishedby a first presence-based service and published by that service to asecond presence-based service, and concurrently, the online identity isused to gain access to a second interoperable presence-based service atone of its client locations or devices or at another client location ordevice of the first interoperable presence-based service. For example,as shown in FIG. 12, when a computer operator submits user@PBS1.com inattempting to register its online presence with presence-based service134 offered by PBS2 130, PBS2 130 authenticates and provides access tothe computer operator as described previously. Thereafter, if a clientmobile device 140 is used by the operator to submit user@PBS1.com whileattempting to access PBS1 120. PBS1 120 authenticates and providesaccess to the operator of the client mobile device.

In particular, FIG. 12 illustrates a process 1200 in which the clientsystem 110 submits a request to access PBS2 130 using an onlineidentity, user@PBS1.com (1210). In response, PBS2 130 requestsauthentication credentials from the client system 110 (1211). Theoperator of the client system 110 provides the credentials, which aresubmitted to PBS2 130 (1212).

Upon receiving the credentials, PBS2 130 submits the credentials (andonline identity) to PBS1 120 (1213). PBS1 120 authenticatesuser@PBS1.com and notifies PBS2 130 that it has authenticateduser@PBS1.com (1214). In response, PBS2 130 enables the client system110 to access PBS2 130 using user@PBS1.com (1215).

Later, but concurrently, the client mobile device 140 requests access toPBS1 120 using the same online identity (e.g., user@PBS1.com) (1216). Inresponse, PBS1 120 requests credentials from the client mobile device140 (1217), and the operator of the client mobile device 140 providesthe credentials, which are submitted to PBS1 120. The login server 122authenticates the online identity and enables the client mobile device140 to access PBS1 120 using the online identity (1219).

A process 1300A shown by FIG. 13A, while similar in some respects to theprocess 1200 of FIG. 12, provides a more detailed example ofauthenticating and authorizing the client system 110 to access PBS2 130using the online identity, user@PBS1.com. Process 1300A includes actions(1310 a-1325 a) which are the same as actions (310 c-325 c) describedwith respect to process 300C of FIG. 3C. As such, the actions (1310a-1325 a) of process 1300A are not described here in further detail.Referring to FIG. 13B, process 1300A continues with PBS2 130 publishingpresence information to one or more interoperable presence-basedservices (e.g., PBS1 120) (1327 a). As a result, PBS1 120 receivespublication of the presence information of the online identity (1328 a).Among other features, this may enable PBS1 120 to inform its subscribersof the presence information. PBS1 120 and PBS2 130 may increment acounter or update a table in order to keep track of the number of times(and specifics therefor) the online identity is used to log into one ormore presence-based services or devices and device types (1329 a and1330 a).

Referring to FIG. 14, a process 1400 is similar in some respects to theprocess 1200 of FIG. 12, but provides a more detailed example ofauthenticating and authorizing the client mobile device 140 to accessPBS1 120 using the online identity, user@PBS1.com. Process 1400 beginswith the client mobile device 140 submitting a request to accesspresence-based service 124 offered by PBS1 120 (1410). The requestincludes the online identity, user@PBS1.com. In one example, theoperator of the client mobile device 140 uses the client software 142associated with the presence-based service 124 to submits its request.PBS1 120 receives the request (1411) and, in response, requestscredentials for user@PBS1.com (1412). The client mobile device 140receives the request for credentials and requests the credentials fromthe operator of the client mobile device 140 (1413). The operator of theclient mobile device 140 provides the credentials, which are submittedto PBS1 120 (1414).

PBS1 120 receives the credentials (1415) and authenticates user@PBS1.com(1416). Additionally, PBS1 120 may recognize PBS2 130's past publicationof presence information for user@PBS1.com by consulting its table orcounter (1417). After detecting past publication of presence for theonline identity (e.g., by consulting its table or counter), PBS1 120records the local presence of the user@PBS1.com by incrementing itscounter or adding a new row to its table (1418). PBS1 120 optionallyprojects the change in presence to PBS1 120 subscribers (1419), and/oroptionally publishes the change in presence to other services such asthe presence-based service of PBS2 130 (1420). If PBS1 120 choose topublish the change in presence to PBS2 130, then PBS2 130 receivespublication of change in presence associated with user@PBS1.com (1421)and increments its counter or updates its table to record the presenceof user@PBS1.com at PBS1 120 (1422).

Referring to FIG. 15, PBS1 120 may publish full attribution or limitedattribution of changes in presence, as shown by process 1500. Process1500 begins with PBS1 120 receiving a request from the client mobiledevice 140 to access PBS1 120 using the online identity, user@PBS1.com(1510). In response, PBS1 120 requests for credentials from the clientmobile device 140 and receives credentials from the client mobile device140 (1512). PBS1 120 authenticates user@PBS1.com (1513) and recognizespast publication of change in presence associated with user@PBS1.com byconsulting its table or counter (1514). PBS1 120 records local presenceof user@PBS1.com by incrementing its counter or updating its table(1515). Then, PBS1 120 determines whether to project attributes to PBS1120 subscribers (1516). For example, this may include showing to thesubscribers that user@PBS1.com is now available on the client mobiledevice 140. Based on this determination, PBS1 120 either projects thepresence information to its subscriber (1517) or it does not (1518).PBS1 120 determines whether to publish the presence information toanother interoperable presence-based system (e.g., PBS2 130) (1519).Based on a positive determination, PBS1 120 either publishes a fullattribution (1522) or a limited attribution (1523). The limitedattribution publication of presence information may include publishingthe new presence of the online identity without the indication of theclient device the operator used to log into the PBS1 presence-basedservice 122. The full attribution publication of the presenceinformation may include publishing the new change in presence of theonline identity and the identity of the client device the operator usedto access the PBS1 presence-based service 122.

FIGS. 16A and 16B illustrate an example of a table 125 stored inpresence-based service of PBS1 120. Referring to FIG. 16A, a table 125includes information such as an online identity (e.g., e-mail address),identity of the service through which login was achieved, identity of aclient device the operator used to access the service, and duration ofonline presence by the online identity. Referring to FIG. 16B, a table125 includes a counter and a list of online identities. For instance,the counter shows that one or more client devices uses an onlineidentity, user@PBS2.com, multiple times to gain access to one or moreinteroperable presence-based services.

PBS1 120 and PBS2 130 may be configured to utilize information withinthese tables for several reasons or in various contexts. First, thisinformation may be used to track the past publication of presenceinformation corresponding to the online identity, and to determinewhether a new publication is necessary when the online identity is usedto again log into one or more presence-based interoperable services ordevices. Second, this information may be used to track the number oftimes the online identity is used to log into one or more differentinteroperable services so that log off from less than all of theservices or device types does not cause premature perception of acomplete loss of online presence. Third, updating the table with theinformation such as the online identity and service of login allows theinteroperable services to easily determine whether or where to sendtraffic that is directed from their subscribers to the online identityas described further below.

Referring to FIG. 16C, the PBS1 presence-based service 124 also includesother attributes database 127. The other attributes database 127 keepstrack of other presence information. For example, FIG. 16C reveals thata user@PBS1.com is logged into PBS1 120 via the client system 110, andthe user@PBS1.com does not have an active presence at the client system110, e.g., the user@PBS1.com is idle. Similarly, FIG. 16C reveals thatuser@PBS1 is also logged into PBS1 120 via the client mobile device 140,and the user@PBS1.com is away from the client mobile device 140. ThePBS1 presence-based service 124 may project this information to itssubscribers. Additionally, the PBS1 presence-based service 124 maypublish this information to other interoperable presence-based services.

At the conclusion of processes illustrated in FIGS. 13A and 13B, 14, and15, PBS1 120 has several options for delivering traffic to the onlineidentity, as shown by processes 1700A-1700C of FIGS. 17A-17C. Morespecifically, for purposes of description, it is assumed that thepresence-based service 124 offered by PBS1 120 recognizes the onlineidentity as having presence directly through PBS1 120 and indirectlythrough PBS2 130, e.g., via a communication from PBS2 130 to PBS1 120that results from interoperability between the systems in response tothe user having signed into PBS2 130 (shown in FIG. 13A-13B). Because adirect and an indirect presence are both recognized, when traffic fromPBS1 120 subscribers is directed to an online identity whose domain isPBS1 120, such as user@PBS1.com, PBS1 120 has options of (1) sending thetraffic directly, meaning through the PBS1 presence-based service 124,to the online identity such that the traffic is received by the onlineidentity at client devices through which the user logged directly intoPBS2 130 (e.g., the client mobile device in FIG. 12), as shown in FIG.17A; (2) sending the traffic indirectly, meaning through PBS2 130, tothe online identity such that the traffic is received by the onlineidentity at client devices through which the user logged indirectly intoPBS1 120 (e.g., the client system 110 in FIG. 12), as shown in FIG. 17B,or (3) sending the traffic to presence-based services of both PBS1 120and PBS2 130, such that the online identity receives it at clientdevices that leverage PBS1 120 and those that leverage other domains andassociated software (e.g., the client mobile device 140 and the clientsystem 110 in FIG. 12), as shown in FIG. 17C.

Below, FIGS. 17A-17C are each described in more detail. FIG. 17Aillustrates a process 1700A that is used by PBS1 120 to send the trafficfrom PBS1 120 subscribers directly to the online identity such that thetraffic is received by the online identity at a client device (e.g., theclient mobile device 140) through which the user logged directly intoPBS1 120. Process 17A begins with PBS1 120 receiving, from at least oneof its subscribers, traffic directed to the online identity,user@PBS1.com (1710 a). By consulting a table or a counter, PBS1 120recognizes online presence of user@PBS1.com at PBS1 120 and one or moreother interoperable presence-based systems (e.g., PBS2 130) (1711 a).The table may include the either of the example tables 125 shown inFIGS. 16A and 16B, or some combination thereof.

PBS1 120 consults PBS1 120 traffic delivery rules to determine where todirect the traffic (1712 a). In one implementation and as shown in FIG.17A, the traffic delivery rules may indicate delivery of traffic onlythrough PBS1 120 (1713 a). In accordance with the traffic delivery rule,PBS1 120 consults its table to determine which client device is beingused to access PBS1 120 (1714 a). PBS1 120 recognizes the onlinepresence of the online identity at the client mobile device 140 throughPBS1 120 directly (1715 a) and, according to the traffic delivery rules,sends the traffic to the online identity at the client mobile device 140(1716 a). The client mobile device 140 receives the traffic (1717 a). Assuch, in this implementation, only the client mobile device 140 receivesthe traffic.

FIG. 17B illustrates an example of a process 1700B that is used by PBS1120 to send the traffic from PBS1 120 indirectly to the online identitysuch that the traffic is received by the online identity at a clientdevice (e.g., the client system 110 of FIG. 12) accessing PBS2 130.Process 1700B includes actions (1710 b-1713 b), which are the same asactions (1710 a 1712 a) illustrated in process 1700A of FIG. 17A and, assuch, are previously described with respect to actions (1710 a-1712 a).Process 1700B is different from process 1700A because in process 1700Bthe traffic delivery rules instruct PBS1 120 to direct the traffic onlythrough PBS2 130 (1713 b), whereas in process 1700A the traffic deliveryrules instruct PBS1 120 to direct the traffic only through PBS1 120.

PBS1 120 therefore consults its table to determine which client deviceis being used to access PBS2 130 (1714 b). PBS1 120 recognizes theonline presence of the online identity at the client system 110 throughPBS2 130 (1715 b), and sends the traffic to PBS2 130 (1716 b). PBS2 130receives the traffic (1717 b) and forwards the traffic to the onlineidentity at the client system 110 (1718 b). As such, in thisimplementation, only the client system 110 receives the traffic (1719b).

FIG. 17C illustrates an example of a process 1700C that is used by PBS1120 to send the traffic to client devices accessing both PBS1 120 andPBS2 130 using the online identity, such that the traffic is received ata client device (e.g., the client mobile device 140) that leverage PBS1120 and a client device (e.g., the client system 110) that leverage PBS2130. The actions (1710 c-1712 c) of process 1700C is the same as actions(1710 a-1712 a) and, as such, are not described here in more detail. Inprocess 1700C, the traffic delivery rules instruct PBS1 120 to directtraffic through all interoperable presence-based services (e.g., PBS1120 and PBS2 130).

PBS1 120 consults its table to determine which client devices areaccessing PBS1 120 and PBS2 130 (1714 c). PBS1 120 recognizes onlinepresence of the online identity at the client mobile device 140 via PBS1120 and at the client system 110 via PBS2 130 (1715 c). As such, PBS1120 sends the traffic to the online identity at the client mobile device(1716 c) and submits the traffic to PBS2 120 for delivery to the clientsystem 110 (1717 c). PBS2 130 receives the traffic (1718 c) and forwardsthe traffic to the online identity at the client system 110 (1719 c).

Therefore, in this implementation, the traffic is delivered to both theclient system 110 and the client mobile device 140 (1720 c and 1721 c).

In a slightly modified scenario where a traffic originates from a PBS2130 subscriber, it may be routed directly to user@PBS1.com via PBS2 130.Additionally, PBS2 130 may inform PBS1 120 of such communication. Inparticular, PBS2 130 may inform PBS1 120 that a traffic was communicatedto its online identity. The information may include the online identity,identity of the sender and the time and date the traffic was sent touser@PBS1.com. In this manner, PBS1 120 is enabled to keep track of thetraffic that is being sent to user@PBS1.com regardless of whether thetraffic delivery rules specify that the traffic should go through PBS1120 and/or PBS2 130 to reach user@PBS1.com.

Referring to FIG. 18, a process 1800 is shown in which the client system110 and the client mobile device 140 uses an online identity,user@PBS1.com, to access a presence-based service 134 of PBS2 130,Process 1800 begins with the client system 110 requesting access to PBS2130 using user@PBS1.com (1810). As suggested with respect to FIG. 3B, alogin server 132 of PBS2 130 authenticates the online identity at clientsystem 110 (1811-1815), and a presence-based service 134 of PBS2 130projects presence information of the online identity at the clientsystem 110 to PBS2 130 subscribers. As suggested with respect to FIGS.8A and 8C, the presence-based service 134 of PBS2 130 also publishes thechanges in presence of the online identity at the client system 110 toPBS1 120 consistent with PBS2 130 publication rules (1816). PBS1 120 mayproject the changes in presence to its subscribers.

Later, but concurrently, the client mobile device 140 requests access toPBS2 130 using the same online identity, user@PBS1.com (1817). Assuggested with respect to FIG. 3D, the login server 132 of PBS2 130authenticates the online identity (1818-1820), and the presence-basedservice 134 of PBS2 130 projects changes in presence of the onlineidentity at the client mobile device 140 to PBS2 130 subscribers. Assuggested with respect to FIGS. 8A and 8C, the presence-based service134 of PBS2 130 also publishes the changes in presence of the onlineidentity at the client mobile device 140 to PBS1 120 consistent withPBS2 130 publication rules (1821). Upon being informed of the changes inpresence, a PBS1 120 subscriber may send a message to user@PBS1.com. Themessage may be configured for limited traffic delivery according to thetraffic delivery rules hosted by PBS1 120. There are many methods thatmay be used to communicate the traffic delivery rules hosted by onepresence-based system, e.g., PBS1 120, to one or more otherpresence-based systems, e.g., PBS2 130, thereby allowing those rules tobe applied by the other systems or domains in effecting the desiredtraffic routing.

FIGS. 19A-19C show a few methods for communicating the traffic deliveryrules hosted by PBS1 120 to PBS2 130. Referring to FIG. 19A, process1900A may be used by PBS1 120 to communicate all the traffic deliveryrules to PBS2 130. Process 1900A begins with PBS1 120 receiving amessage directed to the online identity from one or more PBS1 120subscribers (1910 a). PBS1 120 consults its table to determine localpresence of the online identity (1911 a) and recognizes presence of theonline identity at the client system 110 and the client mobile device140 through PBS2 130 (1912 a). PBS1 120 accesses traffic delivery rulesfor delivering the message (1913 a) and submits the rules to PBS2 130(1914 a). Thereafter, PBS1 120 submits the message to PBS2 130 (1916 a).PBS2 130 receives the rule(s) and the message from PBS1 120 (1915 a and1917 a), and delivers the message to the online identity at the clientdevices 110 and 140 consistent with the rules (1918 a).

Referring to FIG. 19B, in another implementation, PBS1 120 maycommunicate a subset of the rules based on the message or type ofservices into which the online identity is logged in, as shown byprocess 1900B. The actions (1910 b-1913 b) of process 1900B are the sameas actions (1910 a-1913 a) of process 1900A, and, as such, they are notdescribed here in more detail. Process 1900B also includes PBS1 120submitting a subset of rules based on the message and/or the device typeused to access the presence based service (1914 b) and separatelysubmitting the message to PBS2 130 (1916 b). PBS2 130 receives thesubset of the rules and the message (1915 b and 1917 b) and delivers themessage to the online identity at the client devices 110 and 140consistent with the rules (1918 b).

Referring to FIG. 19C, in a different implementation, PBS1 120 mayattach the rules to the message (1914 c) and send the rules with themessage to PBS2 130 (1915 c), PBS2 130 receives the message (1916 c),extracts the rules from the message (1917 c), and sends the message tothe online identity consistent with the rules (1918 c). The actions(1910 c-1913 c) of process 1900C are the same as actions (1910 a-1913 a)of process 1900A and, as such, they are not described here in moredetail. In yet another implementation, PBS1 120 may deliver the rules atthe time it returns an indication of authentication to PBS2 130 for theonline identity, as shown in FIG. 12.

In one specific example, rules hosted by PBS1 120 may include deliveryof the traffic to user@PBS1.com according to the particular clientdevice used to access the presence-based service 134 of PBS2 130 (e.g.,sending the traffic to the online identity at the client system 110).The traffic delivery rules are first communicated to PBS2 130 accordingto one of the several methods described with respects to FIGS. 19A-19C.PBS2 130 consults the traffic delivery rules and consistent with therules sends the message to user@PBS1.com at the client system 110. Thus,user@PBS1.com at the client mobile device 140 does not receive themessage. Alternatively, the rules may require the delivery of themessage to user@PBS1.com logged in to the PBS2 presence-based service134 via the client mobile device 140. Thus, user@PBS1.com logged in viathe client system 110 does not receive the message.

In another implementation, an online identity (e.g., user@PBS1.com)accesses a first presence-based service (e.g., PBS2 130) that is notassociated with the domain of the online identity. The online identitymay have a connection to a second presence-based service (e.g., PBS3)through the first presence-based service. Thereafter, user@PBS1.comreceives, at the first presence-based service, a message from a PBS3subscriber. The message may originate from PBS3 and may be delivered toPBS2 130. Upon receiving a message, PBS2 130 may need to access trafficdelivery rules associated with the online identity in order to regulatedelivery of the message to the online identity based on the trafficdelivery rules. To do so, in one example, PBS2 130 requests the trafficdelivery rules from a third presence-based service. The thirdpresence-based service (e.g., PBS1 120) may be associated with thedomain of the online identity. Alternatively, the third presence-basedservice may be a centralized service that includes traffic deliveryrules for online identities (e.g., at all interoperable presence-basedservices). In another slightly modified scenario, instead of requestingthe traffic delivery rules from the third presence-based service, PBS2130 merely reports to the third presence-based service that the onlineidentity has accessed PBS2 130 and in response, the third presence-basedservice publishes the traffic delivery rules to PBS2 130. In thisimplementation, as the traffic delivery rules changes PBS1 120 maypublish the changes to PBS2 130. In either case, after receiving thetraffic delivery rules from the third presence-based service, PBS2 130regulates delivery of the traffic based on the traffic delivery rules.

FIG. 20 illustrates a traffic delivery rules database 2000 hosted by apresence-based system, e.g., PBS1 120. The traffic delivery rules may becustomized for an individual. In one implementation, the trafficdelivery rules may be customized for the operator of the client systemusing the online identity and, as such, the traffic delivery rulesgovern receipt of the message based on preferences of the onlineidentity or the first presence-based service. Alternatively, the trafficdelivery rules may be customized for a sender of the message and, assuch, the traffic delivery rules regulate delivery of the message to theonline identity based on preferences of the sender of the message or apresence-based service associated with the sender of the message.

The traffic delivery rules database 2000 may include rules for deliveryof the traffic through one or more presence-based systems, as noted withrespect to FIGS. 17A-17C. In addition, the traffic delivery rulesdatabase 2000 may include rules for delivery of traffic to a selectedsubset of online identities for one or more interoperatingpresence-based systems. For instance, the traffic delivery rulesdatabase 2000 may include rules for delivery of the traffic based on theclient device the operator of the online identity uses to log into thePBS2 presence-based service 134, as noted above. Alternatively oradditionally, the traffic delivery rules database 2000 may include rulesfor delivery of the traffic to one or more client devices at aparticular time of day such that the traffic is received at the devicesthat the operator uses at a particular time of day. For example, asshown in FIG. 20, the traffic is sent to the online identity at theclient mobile device between 7 am-9 am because the operator using theonline identity is likely to be on his or her way to work during thattime. Additionally, the traffic delivery rules database 2000 includesrules for delivery of the traffic to the client devices at which theonline identity has an active presence according to presence informationstored in the PBS1 presence based service 124 as shown in FIG. 16C. Forexample, the message may be delivered to the online identity at theclient devices in which the online identity is not idle, away, orhidden.

Alternatively, the traffic delivery rules may include instructions fordetermining whether the online identity has a direct presence at a firstpresence-based service from which the message originates (in keepingwith the above example PBS1 120 with respect to FIGS. 19A-19C), and inthe absence of such direct presence, the traffic delivery rules includeinstructions for delivering the message to the online identity through asecond presence-based service (e.g., PBS2 130). If such direct presenceis determined to exists, the traffic delivery rules include instructionsfor delivering the message to the online identity through the firstinstant messaging service (e.g., PBS1 120). To have direct presence atthe first presence-based service, in one example, the operator of theclient system 110 has to directly login into the first presence-basedservice.

The traffic delivery rules database 2000 may also include rulesregarding the priority of the message. For instance, if the message isurgent the traffic delivery rules may instruct the PBS2 presence-basedservice 134 to send the traffic to the online identity at all clientdevices.

In one specific example, EarthLink® and AOL internet service providersrepresent PBS1 120 and PBS2 130, respectively, and EarthLink® IM andAOL® IM represent the presence-based services for PBS1 120 and PBS2 130,respectively. A client system operator using user@EarthLink.com logsinto EarthLink® IM service through EarthLink® IM client at the clientsystem. Later, but concurrently, the operator using user@EarthLink.comlogs into AOL® IM service through an AOL® IM client at a client mobiledevice. For purpose of this example, we assume that AOL® recognizes theonline identity as having presence directly through AOL® IM service andindirectly through EarthLink® IM service, e.g., via communications fromEarthLink® to AOL® that results from interoperability between theservices in response to user@Earthlink.com having logged into theEarthLink® IM service (shown in FIG. 13A-13B). Because a direct and anindirect presence are both recognized, when traffic from AOL®subscribers is directed to the user@EarthLink.com, AOL®, consistent withits traffic delivery rules, may have options of (1) sending the trafficthrough AOL®, such that the traffic is received by user@EarthLink.com atclient devices through which user@EarthLink.com logged directly intoAOL® IM service (e.g., the client mobile device in the scenariodescribed above), (2) sending the traffic through EarthLink,® such thatthe traffic is received by user@EarthLink.com at client devices throughwhich the user@EarthLink.com logged directly into EarthLink® IM service(e.g., the client system in the scenario described above), and (3)sending the traffic to each of the AOL® and EarthLink®, such that it isreceived at clients for both services through which the user logged in.

A number of implementations have been described. Nevertheless, it willbe understood that various modifications may be made. For example, whilethe foregoing techniques have been described with changes in presence,including online presence at a particular presence-based service andchanges thereto, e.g., log in, log off, idle, away, and hide, thereferences made to changes in presence, additionally or alternatively,may be used to reference changes in presence at different device types,services, and/or processes. Thus, presence has been used to describeonline presence generally, as well as the presence at one or moreparticular services, service provides, devices, or device types.Similarly, changes in presence has been used to describe changes inonline presence generally, as well as the presence at one or moreparticular services, service provider; devices, or device types.Furthermore, while foregoing techniques have been described with anoperator of client devices using an identity with the formusername@domain, other forms may be used to access one or moreinteroperable presence-based services.

What is claimed is;
 1. A method comprising: allowing access to a firstinstant messaging service using an online identity; accessing a profileassociated with the online identity; updating the profile to indicatethat the online identity is currently being used to access the firstinstant messaging service; receiving, at the first instant messagingservice and from another instant messaging service, a message indicatingthat the online identity is currently being used to access a secondinstant messaging service; and in response to the message, updating theprofile to indicate that the online identity is currently being used toaccess the second instant messaging service.
 2. The method of claim 1wherein allowing access to the first instant messaging service using theonline identity comprises: receiving a request to access the firstinstant messaging service, the request including the online identity;determining that the online identity is associated with the secondinstant messaging service; and communicating with the second instantmessaging service to authenticate the online identity.
 3. The method ofclaim 1 wherein the online identity is associated with the first instantmessaging system.
 4. The method of claim 1 wherein the online identityis associated with the second instant messaging system.
 5. The method ofclaim 1 wherein the online identity is expressed using a combination ofa username and a domain name.
 6. The method of claim 1 wherein updatingthe profile to indicate that the online identity is currently being usedto access the second instant messaging service includes updating a tableto include an identity of the second instant messaging system.
 7. Themethod of claim 6 further comprising updating the table to include anidentity of a client device accessing the second instant messagingservice using the online identity.
 8. The method of claim 7 furthercomprising updating the table to include the duration of time the onlineidentity has been used to access the second instant messaging service.9. The method of claim 1 wherein the other instant messaging serviceinclude the second instant messaging service.
 10. The method of claim 1wherein updating the profile includes updating a counter that indicatesthe number of times the online identity is used to access one or moreinstant messaging services.
 11. The method of claim 10 wherein updatingthe profile includes decrementing the counter if it is determined thatthe online identity has logged off from either the first instantmessaging service or the second instant messaging service.
 12. Themethod of claim 11 further comprising: identifying a particular instantmessaging service from which the online identity has logged off; andnotifying the one or more instant messaging service that the onlineidentity has logged off the particular instant messaging service. 13.The method of claim 11 further comprising: identifying a client devicefrom which the online identity has logged off; and notifying the one ormore instant messaging service that the online identity has logged offthe client device.
 14. The method of claim 11 further comprising:determining whether a value of the counter is equal to zero; and if itis determined that the value of the counter is equal to zero, notifyingthe one or more instant messaging service of the online identity'scomplete loss of presence.
 15. The method of claim I wherein accessingthe profile includes accessing a profile maintained by the first instantmessaging service.
 16. A computer-usable medium storing a computerprogram, the computer program comprising instructions for: allowingaccess to a first instant messaging service using an online identity;accessing a profile associated with the online identity; updating theprofile to indicate that the online identity is currently being used toaccess the first instant messaging service; receiving, at the firstinstant messaging service and from another instant messaging service, amessage indicating that the online identity is currently being used toaccess a second instant messaging service; and in response to themessage, updating the profile to indicate that the online identity iscurrently being used to access the second instant messaging service. 17.The medium of claim 16 wherein, to allow access to the first instantmessaging service using the online identity, the instructions includeinstructions for: receiving a request to access the first instantmessaging service, the request including the online identity;determining that the online identity is associated with the secondinstant messaging service; and communicating with the second instantmessaging service to authenticate the online identity.
 18. The medium ofclaim 16 wherein the online identity is associated with the firstinstant messaging system.
 19. The medium of claim 16 wherein the onlineidentity is associated with the second instant messaging system.
 20. Themedium of claim 16 wherein the online identity is expressed using acombination of a username and a domain name.
 21. The medium of claim 16wherein to update the profile to indicate that the online identity iscurrently being used to access the second instant messaging service theinstructions include instructions for updating a table to include anidentity of the second instant messaging system.
 22. The medium of claim21 further comprising instructions for updating the table to include anidentity of a client device accessing the second instant messagingservice using the online identity.
 23. The medium of claim 22 furthercomprising instructions for updating the table to include the durationof time the online identity has been used to access the second instantmessaging service.
 24. The medium of claim 16 wherein to update theprofile the instructions include instructions for updating a counterthat indicates the number of times the online identity is used to accessone or more instant messaging services.
 25. A system comprising: a firstinstant messaging system configured to receive a request for access to afirst instant messaging service associated with the first instantmessaging system; a client system configured to submit a request to thefirst instant messaging system for access to the first instant messagingservice, wherein the request includes an online identity; and a secondinstant messaging system configured to send a message to the firstinstant messaging system that indicates the online identity is currentlybeing used to access a second instant messaging service associated withthe second instant messaging system, wherein: the first instantmessaging system maintains a profile that is updated to indicate thatthe online identity is currently being used to access the first instantmessaging service; and in response to the message, the profile is alsoupdated to indicate that the online identity is currently begin used toaccess the second instant messaging service.
 20. The system of claim 19wherein the online identity is expressed using a combination of ausername and a domain.